      DIMENSION KDOL(3),MDOL(3),LCC(2),NAME(5)
      DIMENSION KSA(2),KOPR(4,7)
      COMMON LNOS(20),KTAB(4640),KARD(80)
      DATA KDOL,MDOL/Z5B40,Z7B40,Z7C40,ZE140,ZEA40,ZEB40/
      DATA KA,KZ,K9/'A',ZEB40,'9'/
      DATA KBLK,KSA/' ','/','*'/,KOMMA/','/
      DATA KOPR/'E','N','D',' ','H','D','N','G','D','M','E','S','E','B',
     1'C',' ','B','S','C',' ','B','O','S','C','B','S','I',' '/
      DATA LCC/'+',' '/
      KRDR=2
      KPRT=3
   20 LINE=1
      KTAB(1)=2
      KTAB(2)=-1
      NAS=3
      KOL=21
      WRITE(KPRT,900)
   30 READ(KRDR,1000)KARD
      WRITE(KPRT,1010)      LINE      ,KARD
      DO 50 I=21,72
      DO 49 J=1,3
      IF(KARD(I)-KDOL(J))49,45,49
   45 KARD(I)=MDOL(J)
      GO TO 50
   49 CONTINUE
   50 CONTINUE
      LKOL=34
      DO 60 I=1,2
      IF(KARD(1)-KSA(I))60,80,60
   60 CONTINUE
      GO TO 140
   80 DO 90 I=1,2
      IF(KARD(I)-KSA(I))120,90,120
   90 CONTINUE
      CALL EXIT
  120 LINE=LINE+1
      GO TO 30
  140 IF(KARD(21)-KSA(2))150,120,150
  150 DO 155 I=1,7
      DO 152 J=1,4
      IF(KARD(J+26)-KOPR(J,I))155,152,155
  152 CONTINUE
      IF(I-1)153,600,153
  153 IF(I-5)200,190,190
  190 IF(KARD(32)-KBLK)192,191,192
  191 IF(I-7)200,157,200
  192 DO 196 J=35,72
      IF(KARD(J)-KOMMA)196,198,196
  198 KARD(J)=KBLK
      GO TO 157
  196 CONTINUE
      GO TO 157
  200 LKOL=35
      GO TO 157
  155 CONTINUE
  157 DO 160 I=26,LKOL
  160 KARD(I)=KBLK
      DO 170 I=35,72
      IF(KARD(I)-KBLK)170,180,170
  170 CONTINUE
      I=I-1
  180 MKOL=I
  210 DO 222 KOL=KOL,MKOL
      IF(KARD(KOL)-KA)222,220,220
  220 IF(KARD(KOL)-KZ)240,240,222
  222 CONTINUE
      KOL=21
      LINE=LINE+1
      GO TO 30
  240 KSN=KOL
      KOL=KOL+1
      DO 300 KOL=KOL,MKOL
      IF(KARD(KOL)-KA)320,280,280
  280 IF(KARD(KOL)-K9)300,300,320
  300 CONTINUE
  320 KEN=KOL-1
      KCC=KEN-KSN+1
  415 NTE=KTAB(1)
      NTEO=1
  420 KKP=KSN
      KTP=NTE+2
      KTEN=KTAB(NTE+1)+NTE+1
      IF(KTAB(NTE))480,480,430
  430 IF(KARD(KKP)-KTAB(KTP))480,440,470
  440 KKP=KKP+1
      KTP=KTP+1
      LEX=1
      IF(KKP-KEN)450,450,445
  445 LEX=LEX+1
  450 IF(KTP-KTEN)460,460,455
  455 LEX=LEX+2
  460 GO TO (430,480,470,500),LEX
  470 NTEO=NTE
      NTE=KTAB(NTE)
      GO TO 420
  480 KTAB(NTEO)=NAS
      KTAB(NAS)=NTE
      NAS=NAS+1
      KTAB(NAS)=KCC
      DO 490 I=KSN,KEN
      NAS=NAS+1
  490 KTAB(NAS)=KARD(I)
      NAS=NAS+1
      KTAB(NAS)=NAS+1
      NAS=NAS+1
      KTAB(NAS)=LINE
      NAS=NAS+1
      KTAB(NAS)=-1
      NAS=NAS+1
      KTAB(NAS)=0
      IF(KSN-21)494,492,494
  492 KTAB(NAS)=LINE
  494 NAS=NAS+1
      GO TO 210
  500 I=NTE+KTAB(NTE+1)+2
      IF(KSN-21)504,502,504
  502 KTAB(I+3)=LINE
  504 LAST=KTAB(I)
      IF(LINE-KTAB(LAST))210,210,510
  510 KTAB(I)=NAS
      KTAB(LAST+1)=NAS
      KTAB(NAS)=LINE
      KTAB(NAS+1)=-1
      NAS=NAS+2
      GO TO 210
  600 WRITE(KPRT,2000)NAS
      NN=1
  620 NN=KTAB(NN)
      IF(KTAB(NN))20,20,625
  625 NCC=KTAB(NN+1)
      II=NN+2
      JJ=NN+1+NCC
      DO 628 K=II,JJ
      DO 627 L=1,3
      IF(KTAB(K)-MDOL(L))627,626,627
  626 KTAB(K)=KDOL(L)
      GO TO 628
  627 CONTINUE
  628 CONTINUE
      DO 700 K=1,5
      KK=II+K-1
      IF(KK-JJ)710,710,720
  710 NAME(K)=KTAB(KK)
      GO TO 700
  720 NAME(K)=KBLK
  700 CONTINUE
      WRITE(KPRT,2010)(NAME(K),K=1,5),KTAB(JJ+4)
  631 LIND=1
      LN=JJ+2
  630 DO 650 I=1,20
      LNOS(I)=KTAB(LN)
      LN=KTAB(LN+1)
      IF(LN)660,660,650
  650 CONTINUE
      I=I-1
  660 WRITE(KPRT,2020)LCC(LIND),(LNOS(J),J=1,I)
      LIND=2
      IF(LN)620,620,630
  900 FORMAT(1H1)
 1000 FORMAT(80A1)
 1010 FORMAT(' ' I4,1X 72A1,5X 8A1)
 2000 FORMAT (1H1,T40,'CROSS REFERENCE TABLE',T116,I5/
     1 ' SYMBOL',T13,'DEF',T23,'REF'/)
 2010 FORMAT (1H ,5A1,T11,I5)
 2020 FORMAT (A1 ,20X,20(I4,' '))
      END
   